Глава 13: Human-in-the-Loop
Шаблон Human-in-the-Loop (HITL) представляет собой ключевую стратегию в разработке и развертывании агентов. Он намеренно переплетает уникальные сильные стороны человеческого познания — такие как суждение, креативность и нюансированное понимание — с вычислительной мощью и эффективностью ИИ. Эта стратегическая интеграция является не просто опцией, но часто необходимостью, особенно когда системы ИИ все больше встраиваются в критически важные процессы принятия решений.
Основной принцип HITL заключается в обеспечении того, чтобы ИИ работал в рамках этических границ, соблюдал протоколы безопасности и достигал своих целей с оптимальной эффективностью. Эти проблемы особенно остры в областях, характеризующихся сложностью, неоднозначностью или значительным риском, где последствия ошибок или неверных интерпретаций ИИ могут быть существенными. В таких сценариях полная автономия — когда системы ИИ функционируют независимо без какого-либо человеческого вмешательства — может оказаться неблагоразумной. HITL признает эту реальность и подчеркивает, что даже при быстро развивающихся технологиях ИИ человеческий надзор, стратегический вклад и совместные взаимодействия остаются незаменимыми.
Подход HITL в основном вращается вокруг идеи синергии между искусственным и человеческим интеллектом. Вместо того чтобы рассматривать ИИ как замену человеческих работников, HITL позиционирует ИИ как инструмент, который дополняет и расширяет человеческие возможности. Это дополнение может принимать различные формы: от автоматизации рутинных задач до предоставления основанных на данных инсайтов, которые информируют человеческие решения. Конечная цель состоит в создании совместной экосистемы, где и люди, и агенты ИИ могут использовать свои отличительные сильные стороны для достижения результатов, которые ни один из них не смог бы достичь в одиночку.
На практике HITL может быть реализован различными способами. Один распространенный подход включает людей, действующих как валидаторы или рецензенты, изучающих выходные данные ИИ для обеспечения точности и выявления потенциальных ошибок. Другая реализация включает людей, активно направляющих поведение ИИ, предоставляющих обратную связь или вносящих исправления в реальном времени. В более сложных настройках люди могут сотрудничать с ИИ как партнеры, совместно решая проблемы или принимая решения через интерактивный диалог или общие интерфейсы. Независимо от конкретной реализации, шаблон HITL подчеркивает важность поддержания человеческого контроля и надзора, обеспечивая, чтобы системы ИИ оставались согласованными с человеческой этикой, ценностями, целями и общественными ожиданиями.
Обзор шаблона Human-in-the-Loop
Шаблон Human-in-the-Loop (HITL) интегрирует искусственный интеллект с человеческим вводом для улучшения возможностей агентов. Этот подход признает, что оптимальная производительность ИИ часто требует сочетания автоматизированной обработки и человеческого понимания, особенно в сценариях с высокой сложностью или этическими соображениями. Вместо замены человеческого ввода, HITL стремится дополнить человеческие способности, обеспечивая, чтобы критические суждения и решения были основаны на человеческом понимании.
HITL охватывает несколько ключевых аспектов: Человеческий надзор, который включает мониторинг производительности и выходных данных агента ИИ (например, через обзор логов или дашборды реального времени) для обеспечения соблюдения рекомендаций и предотвращения нежелательных результатов. Вмешательство и коррекция происходит, когда агент ИИ сталкивается с ошибками или неоднозначными сценариями и может запросить человеческое вмешательство; человеческие операторы могут исправить ошибки, предоставить недостающие данные или направить агента, что также информирует о будущих улучшениях агента. Человеческая обратная связь для обучения собирается и используется для улучшения моделей ИИ, особенно в методологиях, таких как обучение с подкреплением с человеческой обратной связью, где человеческие предпочтения непосредственно влияют на траекторию обучения агента. Дополнение решений — это когда агент ИИ предоставляет анализы и рекомендации человеку, который затем принимает окончательное решение, улучшая человеческое принятие решений через инсайты, генерируемые ИИ, а не полную автономию. Сотрудничество человека и агента — это совместное взаимодействие, где люди и агенты ИИ вносят свои соответствующие сильные стороны; рутинная обработка данных может обрабатываться агентом, в то время как творческое решение проблем или сложные переговоры управляются человеком. Наконец, политики эскалации — это установленные протоколы, которые диктуют, когда и как агент должен эскалировать задачи к человеческим операторам, предотвращая ошибки в ситуациях, выходящих за рамки возможностей агента.
Реализация шаблонов HITL позволяет использовать агентов в чувствительных секторах, где полная автономия невозможна или не разрешена. Это также предоставляет механизм для постоянного улучшения через циклы обратной связи. Например, в финансах окончательное одобрение крупного корпоративного кредита требует, чтобы человек-кредитный специалист оценил качественные факторы, такие как характер руководства. Аналогично, в юридической области основные принципы справедливости и подотчетности требуют, чтобы человек-судья сохранил окончательную власть над критическими решениями, такими как вынесение приговора, которые включают сложное моральное рассуждение.
Предостережения
Несмотря на свои преимущества, шаблон HITL имеет значительные предостережения, главным из которых является отсутствие масштабируемости. Хотя человеческий надзор обеспечивает высокую точность, операторы не могут управлять миллионами задач, создавая фундаментальный компромисс, который часто требует гибридного подхода, сочетающего автоматизацию для масштаба и HITL для точности. Кроме того, эффективность этого шаблона сильно зависит от экспертизы человеческих операторов; например, хотя ИИ может генерировать программный код, только опытный разработчик может точно выявить тонкие ошибки и предоставить правильное руководство для их исправления. Эта потребность в экспертизе также применяется при использовании HITL для генерации тренировочных данных, поскольку человеческие аннотаторы могут потребовать специального обучения, чтобы научиться корректировать ИИ таким образом, который производит высококачественные данные. Наконец, реализация HITL поднимает значительные проблемы приватности, поскольку чувствительная информация часто должна быть тщательно анонимизирована, прежде чем она может быть раскрыта человеческому оператору, добавляя еще один уровень сложности процесса.
Практические применения и случаи использования
Шаблон Human-in-the-Loop жизненно важен в широком спектре отраслей и применений, особенно там, где точность, безопасность, этика или нюансированное понимание имеют первостепенное значение.
Модерация контента: Агенты ИИ могут быстро фильтровать огромные объемы онлайн-контента на предмет нарушений (например, язык ненависти, спам). Однако неоднозначные случаи или пограничный контент эскалируются к человеческим модераторам для обзора и окончательного решения, обеспечивая нюансированное суждение и соблюдение сложных политик.
Автономное вождение: Хотя самоуправляемые автомобили справляются с большинством задач вождения автономно, они предназначены для передачи управления человеку-водителю в сложных, непредсказуемых или опасных ситуациях, с которыми ИИ не может уверенно справиться (например, экстремальные погодные условия, необычные дорожные условия).
Обнаружение финансового мошенничества: Системы ИИ могут отмечать подозрительные транзакции на основе паттернов. Однако высокорисковые или неоднозначные предупреждения часто отправляются к человеческим аналитикам, которые проводят дальнейшее расследование, связываются с клиентами и принимают окончательное определение о том, является ли транзакция мошеннической.
Обзор юридических документов: ИИ может быстро сканировать и категоризировать тысячи юридических документов для выявления соответствующих клаузул или доказательств. Человеческие юридические профессионалы затем просматривают выводы ИИ на точность, контекст и юридические последствия, особенно для критических случаев.
Поддержка клиентов (сложные запросы): Чатбот может обрабатывать рутинные запросы клиентов. Если проблема пользователя слишком сложна, эмоционально заряжена или требует эмпатии, которую ИИ не может предоставить, разговор плавно передается человеческому агенту поддержки.
Разметка и аннотация данных: Модели ИИ часто требуют больших наборов размеченных данных для обучения. Люди включаются в контур для точной разметки изображений, текста или аудио, предоставляя истинные данные, на которых учится ИИ. Это непрерывный процесс по мере развития моделей.
Улучшение генеративного ИИ: Когда LLM генерирует креативный контент (например, маркетинговые тексты, дизайнерские идеи), человеческие редакторы или дизайнеры просматривают и улучшают выходные данные, обеспечивая соответствие брендовым рекомендациям, резонанс с целевой аудиторией и поддержание качества.
Автономные сети: Системы ИИ способны анализировать предупреждения и прогнозировать сетевые проблемы и аномалии трафика, используя ключевые показатели производительности (KPI) и выявленные паттерны. Тем не менее, критические решения — такие как устранение высокорисковых предупреждений — часто эскалируются к человеческим аналитикам. Эти аналитики проводят дальнейшее расследование и принимают окончательное определение относительно одобрения сетевых изменений.
Этот шаблон демонстрирует практический метод для реализации ИИ. Он использует ИИ для повышения масштабируемости и эффективности, сохраняя при этом человеческий надзор для обеспечения качества, безопасности и этического соответствия.
"Human-on-the-loop" — это вариация этого шаблона, где человеческие эксперты определяют общую политику, а ИИ затем обрабатывает немедленные действия для обеспечения соответствия. Рассмотрим два примера:
Автоматизированная система финансовой торговли: В этом сценарии человек-финансовый эксперт устанавливает общую инвестиционную стратегию и правила. Например, человек может определить политику как: "Поддерживать портфель из 70% технологических акций и 30% облигаций, не инвестировать более 5% в любую отдельную компанию и автоматически продавать любую акцию, которая падает на 10% ниже цены покупки." ИИ затем мониторит фондовый рынок в реальном времени, мгновенно выполняя сделки, когда эти предопределенные условия выполняются. ИИ обрабатывает немедленные высокоскоростные действия на основе более медленной, более стратегической политики, установленной человеческим оператором.
Современный колл-центр: В этой настройке человек-менеджер устанавливает высокоуровневые политики для взаимодействий с клиентами. Например, менеджер может установить правила, такие как "любой звонок, упоминающий 'отключение сервиса', должен быть немедленно направлен к специалисту технической поддержки" или "если тон голоса клиента указывает на высокое разочарование, система должна предложить подключить их напрямую к человеческому агенту." Система ИИ затем обрабатывает начальные взаимодействия с клиентами, слушая и интерпретируя их потребности в реальном времени. Она автономно выполняет политики менеджера, мгновенно направляя звонки или предлагая эскалации без необходимости человеческого вмешательства для каждого отдельного случая. Это позволяет ИИ управлять большим объемом немедленных действий в соответствии с более медленным, стратегическим руководством, предоставленным человеческим оператором.
Практический пример кода
Для демонстрации шаблона Human-in-the-Loop агент ADK может выявлять сценарии, требующие человеческого обзора, и инициировать процесс эскалации. Это позволяет человеческое вмешательство в ситуациях, где возможности автономного принятия решений агента ограничены или когда требуются сложные суждения. Это не изолированная функция; другие популярные фреймворки приняли аналогичные возможности. LangChain, например, также предоставляет инструменты для реализации этих типов взаимодействий.
from google.adk.agents import Agent
from google.adk.tools.tool_context import ToolContext
from google.adk.callbacks import CallbackContext
from google.adk.models.llm import LlmRequest
from google.genai import types
from typing import Optional
# Заглушки для инструментов (замените на реальные реализации при необходимости)
def troubleshoot_issue(issue: str) -> dict:
"""Диагностирует техническую проблему."""
return {
"status": "success",
"report": f"Шаги диагностики для {issue}."
}
def create_ticket(issue_type: str, details: str) -> dict:
"""Создает тикет поддержки."""
return {
"status": "success",
"ticket_id": "TICKET123"
}
def escalate_to_human(issue_type: str) -> dict:
"""Эскалирует проблему к человеку-специалисту."""
# В реальной системе это обычно передает в очередь человека
return {
"status": "success",
"message": f"Эскалировано {issue_type} к человеку-специалисту."
}
technical_support_agent = Agent(
name="technical_support_specialist",
model="gemini-2.0-flash-exp",
instruction="""
Вы специалист технической поддержки нашей электронной компании.
СНАЧАЛА проверьте, есть ли у пользователя история поддержки в state["customer_info"]["support_history"].
Если есть, ссылайтесь на эту историю в своих ответах.
Для технических проблем:
1. Используйте инструмент troubleshoot_issue для анализа проблемы.
2. Проведите пользователя через базовые шаги диагностики.
3. Если проблема сохраняется, используйте create_ticket для регистрации проблемы.
Для сложных проблем, выходящих за рамки базовой диагностики:
1. Используйте escalate_to_human для передачи к человеку-специалисту.
Поддерживайте профессиональный, но эмпатичный тон. Признавайте разочарование, которое могут
вызвать технические проблемы, предоставляя четкие шаги к решению.
""",
tools=[troubleshoot_issue, create_ticket, escalate_to_human]
)
def personalization_callback(
callback_context: CallbackContext, llm_request: LlmRequest
) -> Optional[LlmRequest]:
"""Добавляет информацию о персонализации к запросу LLM."""
# Получаем информацию о клиенте из состояния
customer_info = callback_context.state.get("customer_info")
if customer_info:
customer_name = customer_info.get("name", "уважаемый клиент")
customer_tier = customer_info.get("tier", "стандартный")
recent_purchases = customer_info.get("recent_purchases", [])
personalization_note = (
f"\nВАЖНАЯ ПЕРСОНАЛИЗАЦИЯ:\n"
f"Имя клиента: {customer_name}\n"
f"Уровень клиента: {customer_tier}\n"
)
if recent_purchases:
personalization_note += (
f"Недавние покупки: {', '.join(recent_purchases)}\n"
)
if llm_request.contents:
# Добавляем как системное сообщение перед первым контентом
system_content = types.Content(
role="system",
parts=[types.Part(text=personalization_note)]
)
llm_request.contents.insert(0, system_content)
return None # Возвращаем None для продолжения с измененным запросомЭтот код предлагает схему для создания агента технической поддержки, использующего Google ADK, разработанного вокруг фреймворка HITL. Агент действует как интеллектуальная первая линия поддержки, настроенная с конкретными инструкциями и оборудованная инструментами, такими как troubleshoot_issue, create_ticket и escalate_to_human, для управления полным рабочим процессом поддержки. Инструмент эскалации является основной частью дизайна HITL, обеспечивая передачу сложных или чувствительных случаев к человекам-специалистам.
Ключевая особенность этой архитектуры — ее способность к глубокой персонализации, достигаемая через специальную функцию обратного вызова. Перед обращением к LLM эта функция динамически извлекает специфичные для клиента данные — такие как их имя, уровень и история покупок — из состояния агента. Этот контекст затем внедряется в prompt как системное сообщение, позволяя агенту предоставлять высокоадаптированные и информированные ответы, которые ссылаются на историю пользователя. Сочетая структурированный рабочий процесс с важным человеческим надзором и динамической персонализацией, этот код служит практическим примером того, как ADK облегчает разработку сложных и надежных решений поддержки ИИ.
Краткий обзор
Что: Системы ИИ, включая продвинутые LLM, часто испытывают трудности с задачами, которые требуют нюансированного суждения, этического рассуждения или глубокого понимания сложных, неоднозначных контекстов. Развертывание полностью автономного ИИ в высокорисковых средах несет значительные риски, поскольку ошибки могут привести к серьезным последствиям для безопасности, финансов или этики. Эти системы лишены присущих людям креативности и здравого смысла. Следовательно, полагаться исключительно на автоматизацию в критических процессах принятия решений часто неблагоразумно и может подорвать общую эффективность и надежность системы.
Почему: Шаблон Human-in-the-Loop (HITL) предоставляет стандартизированное решение путем стратегической интеграции человеческого надзора в рабочие процессы ИИ. Этот агентный подход создает симбиотическое партнерство, где ИИ обрабатывает вычислительную тяжелую работу и обработку данных, в то время как люди обеспечивают критическую валидацию, обратную связь и вмешательство. Таким образом, HITL обеспечивает, чтобы действия ИИ соответствовали человеческим ценностям и протоколам безопасности. Эта совместная структура не только смягчает риски полной автоматизации, но и улучшает возможности системы через непрерывное обучение от человеческого ввода. В конечном итоге это приводит к более надежным, точным и этичным результатам, которых ни человек, ни ИИ не могли бы достичь в одиночку.
Практическое правило: Используйте этот шаблон при развертывании ИИ в областях, где ошибки имеют значительные последствия для безопасности, этики или финансов, таких как здравоохранение, финансы или автономные системы. Он необходим для задач, включающих неоднозначность и нюансы, которые LLM не могут надежно обработать, таких как модерация контента или сложные эскалации поддержки клиентов. Применяйте HITL, когда цель состоит в непрерывном улучшении модели ИИ с высококачественными, размеченными человеком данными или для улучшения выходных данных генеративного ИИ для соответствия конкретным стандартам качества.
Визуальное резюме:

Рис.1: Шаблон проектирования Human in the loop
Ключевые выводы
Ключевые выводы включают:
- Human-in-the-Loop (HITL) интегрирует человеческий интеллект и суждение в рабочие процессы ИИ.
- Он критически важен для безопасности, этики и эффективности в сложных или высокорисковых сценариях.
- Ключевые аспекты включают человеческий надзор, вмешательство, обратную связь для обучения и дополнение решений.
- Политики эскалации необходимы для агентов, чтобы знать, когда передать управление человеку.
- HITL позволяет ответственное развертывание ИИ и непрерывное улучшение.
- Основными недостатками Human-in-the-Loop являются его присущее отсутствие масштабируемости, создающее компромисс между точностью и объемом, и его зависимость от высококвалифицированных экспертов предметной области для эффективного вмешательства.
- Его реализация представляет операционные вызовы, включая необходимость обучения человеческих операторов для генерации данных и решения проблем приватности путем анонимизации чувствительной информации.
Заключение
Эта глава исследовала жизненно важный шаблон Human-in-the-Loop (HITL), подчеркивая его роль в создании надежных, безопасных и этичных систем ИИ. Мы обсудили, как интеграция человеческого надзора, вмешательства и обратной связи в рабочие процессы агентов может значительно улучшить их производительность и надежность, особенно в сложных и чувствительных областях. Практические применения продемонстрировали широкую полезность HITL, от модерации контента и медицинской диагностики до автономного вождения и поддержки клиентов. Концептуальный пример кода предоставил представление о том, как ADK может облегчить эти взаимодействия человека и агента через механизмы эскалации. Поскольку возможности ИИ продолжают развиваться, HITL остается краеугольным камнем для ответственной разработки ИИ, обеспечивая, чтобы человеческие ценности и экспертиза оставались центральными в дизайне интеллектуальных систем.
Литература
- A Survey of Human-in-the-loop for Machine Learning, Xingjiao Wu, Luwei Xiao, Yixuan Sun, Junhang Zhang, Tianlong Ma, Liang He, https://arxiv.org/abs/2108.00941
Навигация
Назад: Глава 12. Обработка исключений и восстановление
Вперед: Глава 14. Извлечение знаний